<!DOCTYPE HTML>

<html lang="en">
<head>

<title>MethodInvocationUtils (spring-security-docs 5.6.3 API)</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../jquery/jquery-ui.css" title="Style">
<script type="text/javascript" src="../../../../script.js"></script>
<script type="text/javascript" src="../../../../jquery/jszip/dist/jszip.min.js"></script>
<script type="text/javascript" src="../../../../jquery/jszip-utils/dist/jszip-utils.min.js"></script>
<!--[if IE]>
<script type="text/javascript" src="../../../../jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script>
<![endif]-->
<script type="text/javascript" src="../../../../jquery/jquery-3.5.1.js"></script>
<script type="text/javascript" src="../../../../jquery/jquery-ui.js"></script>
</head>
<body>
<script type="text/javascript"><!--
    try {
        if (location.href.indexOf('is-external=true') == -1) {
            parent.document.title="MethodInvocationUtils (spring-security-docs 5.6.3 API)";
        }
    }
    catch(err) {
    }
//-->
var data = {"i0":9,"i1":9,"i2":9};
var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
var pathtoroot = "../../../../";
var useModuleDirectories = true;
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<header role="banner">
<nav role="navigation">
<div class="fixedNav">

<div class="topNav"><a id="navbar.top">

</a>
<div class="skipNav"><a href="MethodInvocationUtils.html#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.top.firstrow">

</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../allclasses.html">All&nbsp;Classes</a></li>
</ul>
<ul class="navListSearch">
<li><label for="search">SEARCH:</label>
<input type="text" id="search" value="search" disabled="disabled">
<input type="reset" id="reset" value="reset" disabled="disabled">
</li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_top");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="MethodInvocationUtils.html#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="MethodInvocationUtils.html#method.detail">Method</a></li>
</ul>
</div>
<a id="skip.navbar.top">

</a></div>

</div>
<div class="navPadding">&nbsp;</div>
<script type="text/javascript"><!--
$('.navPadding').css('padding-top', $('.fixedNav').css("height"));
//-->
</script>
</nav>
</header>

<main role="main">
<div class="header">
<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">org.springframework.security.util</a></div>
<h2 title="Class MethodInvocationUtils" class="title">Class MethodInvocationUtils</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li>org.springframework.security.util.MethodInvocationUtils</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr>
<pre>public final class <span class="typeNameLabel">MethodInvocationUtils</span>
extends java.lang.Object</pre>
<div class="block">Static utility methods for creating <code>MethodInvocation</code>s usable within Spring
Security.
<p>
All methods of this class return a
<a href="SimpleMethodInvocation.html" title="class in org.springframework.security.util"><code>SimpleMethodInvocation</code></a>.</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">

<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.summary">

</a>
<h3>Method Summary</h3>
<table class="memberSummary">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Method</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>static org.aopalliance.intercept.MethodInvocation</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="MethodInvocationUtils.html#create(java.lang.Object,java.lang.String,java.lang.Object...)">create</a></span>&#8203;(java.lang.Object&nbsp;object,
java.lang.String&nbsp;methodName,
java.lang.Object...&nbsp;args)</code></th>
<td class="colLast">
<div class="block">Generates a <code>MethodInvocation</code> for specified <code>methodName</code> on
the passed object, using the <code>args</code> to locate the method.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>static org.aopalliance.intercept.MethodInvocation</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="MethodInvocationUtils.html#createFromClass(java.lang.Class,java.lang.String)">createFromClass</a></span>&#8203;(java.lang.Class&lt;?&gt;&nbsp;clazz,
java.lang.String&nbsp;methodName)</code></th>
<td class="colLast">
<div class="block">Generates a <code>MethodInvocation</code> for the specified <code>methodName</code>
on the passed class.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>static org.aopalliance.intercept.MethodInvocation</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="MethodInvocationUtils.html#createFromClass(java.lang.Object,java.lang.Class,java.lang.String,java.lang.Class%5B%5D,java.lang.Object%5B%5D)">createFromClass</a></span>&#8203;(java.lang.Object&nbsp;targetObject,
java.lang.Class&lt;?&gt;&nbsp;clazz,
java.lang.String&nbsp;methodName,
java.lang.Class&lt;?&gt;[]&nbsp;classArgs,
java.lang.Object[]&nbsp;args)</code></th>
<td class="colLast">
<div class="block">Generates a <code>MethodInvocation</code> for specified <code>methodName</code> on
the passed class, using the <code>args</code> to locate the method.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.java.lang.Object">

</a>
<h3>Methods inherited from class&nbsp;java.lang.Object</h3>
<code>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</code></li>
</ul>
</li>
</ul>
</section>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">

<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.detail">

</a>
<h3>Method Detail</h3>
<a id="create(java.lang.Object,java.lang.String,java.lang.Object...)">

</a>
<ul class="blockList">
<li class="blockList">
<h4>create</h4>
<pre class="methodSignature">public static&nbsp;org.aopalliance.intercept.MethodInvocation&nbsp;create&#8203;(java.lang.Object&nbsp;object,
                                                                java.lang.String&nbsp;methodName,
                                                                java.lang.Object...&nbsp;args)</pre>
<div class="block">Generates a <code>MethodInvocation</code> for specified <code>methodName</code> on
the passed object, using the <code>args</code> to locate the method.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>object</code> - the object that will be used to find the relevant <code>Method</code></dd>
<dd><code>methodName</code> - the name of the method to find</dd>
<dd><code>args</code> - arguments that are required as part of the method signature (can be
empty)</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a <code>MethodInvocation</code>, or <code>null</code> if there was a
problem</dd>
</dl>
</li>
</ul>
<a id="createFromClass(java.lang.Class,java.lang.String)">

</a>
<ul class="blockList">
<li class="blockList">
<h4>createFromClass</h4>
<pre class="methodSignature">public static&nbsp;org.aopalliance.intercept.MethodInvocation&nbsp;createFromClass&#8203;(java.lang.Class&lt;?&gt;&nbsp;clazz,
                                                                         java.lang.String&nbsp;methodName)</pre>
<div class="block">Generates a <code>MethodInvocation</code> for the specified <code>methodName</code>
on the passed class.
If a method with this name, taking no arguments does not exist, it will check
through the declared methods on the class, until one is found matching the supplied
name. If more than one method name matches, an <tt>IllegalArgumentException</tt>
will be raised.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>clazz</code> - the class of object that will be used to find the relevant
<code>Method</code></dd>
<dd><code>methodName</code> - the name of the method to find</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a <code>MethodInvocation</code>, or <code>null</code> if there was a
problem</dd>
</dl>
</li>
</ul>
<a id="createFromClass(java.lang.Object,java.lang.Class,java.lang.String,java.lang.Class[],java.lang.Object[])">

</a>
<ul class="blockListLast">
<li class="blockList">
<h4>createFromClass</h4>
<pre class="methodSignature">public static&nbsp;org.aopalliance.intercept.MethodInvocation&nbsp;createFromClass&#8203;(java.lang.Object&nbsp;targetObject,
                                                                         java.lang.Class&lt;?&gt;&nbsp;clazz,
                                                                         java.lang.String&nbsp;methodName,
                                                                         java.lang.Class&lt;?&gt;[]&nbsp;classArgs,
                                                                         java.lang.Object[]&nbsp;args)</pre>
<div class="block">Generates a <code>MethodInvocation</code> for specified <code>methodName</code> on
the passed class, using the <code>args</code> to locate the method.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>targetObject</code> - the object being invoked</dd>
<dd><code>clazz</code> - the class of object that will be used to find the relevant
<code>Method</code></dd>
<dd><code>methodName</code> - the name of the method to find</dd>
<dd><code>classArgs</code> - arguments that are required to locate the relevant method
signature</dd>
<dd><code>args</code> - the actual arguments that should be passed to SimpleMethodInvocation</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a <code>MethodInvocation</code>, or <code>null</code> if there was a
problem</dd>
</dl>
</li>
</ul>
</li>
</ul>
</section>
</li>
</ul>
</div>
</div>
</main>

<footer role="contentinfo">
<nav role="navigation">

<div class="bottomNav"><a id="navbar.bottom">

</a>
<div class="skipNav"><a href="MethodInvocationUtils.html#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.bottom.firstrow">

</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../allclasses.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_bottom");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="MethodInvocationUtils.html#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="MethodInvocationUtils.html#method.detail">Method</a></li>
</ul>
</div>
<a id="skip.navbar.bottom">

</a></div>

</nav>
</footer>
<script>if (window.parent == window) {(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)})(window,document,'script','//www.google-analytics.com/analytics.js','ga');ga('create', 'UA-2728886-23', 'auto', {'siteSpeedSampleRate': 100});ga('send', 'pageview');}</script><script defer src="https://static.cloudflareinsights.com/beacon.min.js/v652eace1692a40cfa3763df669d7439c1639079717194" integrity="sha512-Gi7xpJR8tSkrpF7aordPZQlW2DLtzUlZcumS8dMQjwDHEnw9I7ZLyiOj/6tZStRBGtGgN6ceN6cMH8z7etPGlw==" data-cf-beacon='{"rayId":"7040e3d378f297cf","token":"bffcb8a918ae4755926f76178bfbd26b","version":"2021.12.0","si":100}' crossorigin="anonymous"></script>
</body>
</html>
